package cn.stylefeng.guns.modular.biz.pojo.request;

import cn.stylefeng.roses.kernel.rule.pojo.request.BaseRequest;
import cn.stylefeng.roses.kernel.rule.annotation.ChineseDescription;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.List;

/**
 * 进场煤分摊记录封装类
 *
 * @author 张朋飞
 * @since 2024/10/11 16:57
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class PrWeightRecodsRequest extends BaseRequest {

    /**
     * 主键id
     */
    @NotNull(message = "主键id不能为空", groups = {edit.class, delete.class})
    @ChineseDescription("主键id")
    private Long pwrId;
    /**
     * 汇总单号
     */
    @NotBlank(message = "汇总单号不能为空", groups = {add.class, edit.class})
    @ChineseDescription("汇总单号")
    private String wtSumId;
    /**
     * 计量重量
     */
    @NotNull(message = "计量重量不能为空", groups = {add.class, edit.class})
    @ChineseDescription("计量重量")
    private BigDecimal weight;
    /**
     * 预报热值
     */
    @ChineseDescription("预报热值")
    private String forecastQnetar;
    /**
     * 预报干基硫分
     */
    @ChineseDescription("预报干基硫分")
    private String forecastStd;

    /**
     * 实际热值
     */
    @ChineseDescription("实际热值")
    private String qnetar;
    /**
     * 实际干基硫分
     */
    @ChineseDescription("实际干基硫分")
    private String std;
    /**
     * 区域管理编码
     */
    @ChineseDescription("区域管理编码")
    private String managerCode;
    /**
     * 层高代码
     */
    @ChineseDescription("层高代码")
    private String layerCode;
    /**
     * 入堆重量
     */
    //@NotNull(message = "入堆重量不能为空", groups = {add.class, edit.class})
    @ChineseDescription("入堆重量")
    private BigDecimal inWeight;
    /**
     * 预报总热值
     */
    @ChineseDescription("预报总热值")
    private String forecastSumQnetar;
    /**
     * 预报总干基硫分
     */
    @ChineseDescription("预报总干基硫分")
    private String forecastSumStd;
    /**
     * 实际总热值
     */
    @ChineseDescription("实际总热值")
    private String sumQnetar;
    /**
     * 实际总干基硫分
     */
    @ChineseDescription("实际总干基硫分")
    private String sumStd;

    /**
     * 批量删除用的id集合
     */
    @NotNull(message = "批量删除id集合不能为空", groups = batchDelete.class)
    @ChineseDescription("批量删除用的id集合")
    private List<Long> batchDeleteIdList;

    private List<PrWeightRecodsCoalQuantityRequest> coalQuantitys;
}